In manufacturing, processing and other complex systems, it is desirable that the system functions be achieved while efficiently using resources to minimize costs. Design teams, which depending on the system may include one or more design team members having specialized areas of expertise, attempt to optimize such systems without using unreasonable amounts of time and effort. For example, a design team may include mechanical engineers that seek to develop floor plans that position components (or articles) of the system on a shop floor or in another appropriate environment to provide easy access and optimize use of available space; process engineers seeking to design processes that use raw materials efficiently and eliminate significant bottle necks; and electrical engineers that seek to develop electrical plans that ensure, among other things, that the articles in the environment have access to appropriate electrical inputs. Accordingly, each member of the design team attempts to develop designs that work well from the perspective of the particular member's area of specialization.
Design team members often use computerized tools to assist them when developing a complex system. For instance, a process engineer may use a process modeling tool to generate a computerized representation of the system environment. U.S. Pat. No. 5,168,441, issued on Dec. 1, 1992, to Onarheim et al. (the '441 patent) is such a tool and is incorporated herein by reference. The '441 patent allows a user to represent different stages of a process in an interactive window that shows a process flow from one stage of the process to another. In particular, the '441 patent provides a car wash example that represents different stages such as an entrance stage, a wash stage, a wax stage, and a dry stage of the car wash.
Although each member of the design team may develop a successful design when Viewed within the design team member's area of specialization, or within an area or domain in which the design member is currently working, it is difficult to organize and coordinate the team members' designs in the various domains into a practical and workable system that can be implemented at a reasonable cost. Often, the task of combining the designs by organizing and coordinating the design information for each domain is so complex and unique that this task is performed manually, requiring large amounts of time and effort. Furthermore, inconsistencies or incompatibilities often arise between the designs of different design team members in the various domains, but may not be discovered until late in the development process when the design information in the various domains is to be combined. Sometimes such errors are completely missed in the design process and may only turn up when problems develop in the resulting systems. Unfortunately, such design incompatibilities, and even design errors and mistakes, are difficult to avoid, particularly in large and complex manufacturing or other system designs. One reason for this is that current design tools do not send messages between domains to flag or compensate for actions or changes in one domain which may affect other domains, or affect other portions of (or articles in) the same domain.
Accordingly, a need exists for a tool that organizes and coordinates design information from different members of a design team for different domains to overcome the drawbacks identified above. In particular, a tool that automatically organizes and coordinates design information representing multiple domains of a design environment will not only reduce the amount of time and expenses required to combine the information into a practical and implementable design, but also will reduce the chances of making design errors.